Image-processing apparatus and method

ABSTRACT

An image-processing apparatus is configured to read encoded video data from a recording medium, decode the encoded video data, and re-encode the decoded video data. Further, the image-processing apparatus is configured to record information about a viewing-operation-history relating to the encoded video data and determine a target bit rate of the re-encoding based on the information about the viewing-operation-history. An image-processing method includes reading encoded video data from a recording medium, decoding the encoded video data, detecting information about a viewing-operation history relating to the encoded video data, re-encoding decoded video data obtained at the decoding step, and determining a target bit rate of the re-encoding performed at the encoding step based on the information about the viewing-operation-history.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/116,129 filed May 6, 2008 (now U.S. Pat. No. 8,355,432), which claimspriority to Japanese Patent Application No. 2007-125454 filed on May 10,2007. Each of U.S. patent application Ser. No. 12/116,129 and JapanesePatent Application No. 2007-125454 is hereby incorporated by referenceherein in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an image-processing apparatus and amethod, and particularly relates to an apparatus and a method that areprovided to transcode compressed and encoded video data.

2. Description of the Related Art

Encoding systems such as the Moving Picture Experts Group Phase-2(MPEG-2) encoding system have been established as technologies forcompressing and encoding image data. Manufacturers have developed andcommercialized image-pickup devices including digital cameras, digitalvideo cameras, and digital-versatile-disk (DVD) recorders that areconfigured to record image data (especially video data) under the MPEG-2encoding system. Users can play recorded image data back by using theabove-described devices, or a personal computer, a DVD player, and soforth.

A bit rate can be changed by temporarily decoding video data compressedand encoded under the MPEG-2 encoding system and re-encoding the decodedvideo data. The above-described technology is usually referred to astranscoding. The transcoding technology is usually performed to reduce adata amount. Namely, video data is re-compressed at a bit rate lowerthan that used before the transcoding is performed. For example, encodedvideo data recorded through the digital video camera, the encoded videodata corresponding to a plurality of DVDs, can be recorded onto a singleDVD through transcoding.

A variable-bit-rate (VBR) encoding system has been established forincreasing the encoding efficiency of the MPEG-2 encoding system. TheVBR encoding denotes a method of variably controlling a bit rateaccording to the complexity of image data and/or the magnitude ofmovement in each of frames of video data.

Technologies of encoding the video data corresponding to a scene inwhich a user is interested with high image quality by changing a bitrate based on a viewing history describing the contents, performers, orother characteristics of a program viewed by the user are available. Oneof the above-described technologies is disclosed in Japanese PatentLaid-Open No. 2004-186845.

The technology disclosed in Japanese Patent Laid-Open No. 2004-186845allows for encoding video data corresponding to a scene showing aperformer who had been viewed by the user with high image quality, forexample.

However, not all the scenes showing the performer who had been viewed bythe user is of interest to the user. On the contrary, such scenes may beof little interest to the user and the user may not wish to view thescenes. Therefore, encoding all video data corresponding to a scene(s)determined based on an appearance of the performer in such scene(s) withhigh image quality may lead to a waste of a recording medium.

SUMMARY OF THE INVENTION

The present invention provides an image-processing apparatus and amethod that determine the degree of a user's interest in a scene basedon information about a history of viewing operations performed by theuser and that re-encode the video data corresponding to a scene in whichthe user is interested with accuracy and high image quality.

According to an aspect of the present invention, an image-processingapparatus includes a read unit configured to read encoded video datafrom a recording medium, a decoding unit configured to decode theencoded video data, a record unit configured to record information abouta viewing-operation-history relating to the encoded video data, anencoding unit configured to re-encode decoded video data transmittedfrom the decoding unit, and a bit-rate-determination unit configured todetermine a target bit rate of the re-encoding performed by the encodingunit based on the information about the viewing-operation-history.

According to another aspect of the present invention, animage-processing method includes reading encoded video data from arecording medium, decoding the encoded video data, detecting informationabout a viewing-operation history relating to the encoded video data,re-encoding decoded video data obtained at the decoding step, anddetermining a target bit rate of the re-encoding performed at theencoding step based on the information about theviewing-operation-history.

Further features and aspects of the present invention will becomeapparent from the following detailed description of exemplaryembodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing an exemplary configuration of animage-recording-and-reproducing apparatus according to a first exemplaryembodiment of the present invention.

FIG. 2 is a block diagram showing an exemplary configuration of avideo-decoding unit according to the first exemplary embodiment.

FIG. 3 is block diagram showing an exemplary configuration of avideo-encoding unit according to the first exemplary embodiment.

FIG. 4 shows exemplary viewing-operation-history data recorded in aviewing-operation-history-recording unit.

FIG. 5 shows a first exemplary viewing-operation-history dataillustrating operations of a target-bit-rate-determination unit.

FIG. 6 shows an exemplary varying bit rate corresponding to the firstexemplary viewing-operation-history data shown in FIG. 5.

FIG. 7 shows a second exemplary viewing-operation-history dataillustrating the operations of the target-bit-rate-determination unit.

FIG. 8 shows an exemplary varying bit rate corresponding to the secondexemplary viewing-operation-history data shown in FIG. 7.

FIG. 9 shows a third exemplary viewing-operation-history dataillustrating the operations of the target-bit-rate-determination unit.

FIG. 10 shows an exemplary varying bit rate corresponding to the thirdexemplary viewing-operation-history data shown in FIG. 9.

FIG. 11 shows a fourth exemplary viewing-operation-history dataillustrating the operations of the target-bit-rate-determination unit ina second embodiment of the present invention.

FIG. 12 shows an exemplary varying bit rate corresponding to the fourthexemplary viewing-operation-history data shown in FIG. 11.

FIG. 13 is an exemplary flowchart showing exemplary operations of thetarget-bit-rate-determination unit for the first and second embodiments.

DESCRIPTION OF THE EMBODIMENTS

Numerous embodiments, features and aspects of the present invention aredescribed with reference to the drawings.

First Embodiment

FIG. 1 is a block diagram showing an exemplary configuration of animage-recording-and-reproducing apparatus according to a first exemplaryembodiment of the present invention. In the first embodiment, video datais compressed and encoded under the MPEG-2 encoding system. The MPEG-2encoding system, (which is primarily comprised ofdiscrete-cosine-transform (DCT) processing, quantization processing, andvariable-length-coding processing), includes intra-frame-codingprocessing, inter-frame-coding (predictive coding) processing, andmotion-compensation processing.

A user instructs a system-control unit 14 of animage-recording-and-reproducing apparatus 10 to perform various types ofoperations and transmits, for example, an order for transcoding to thesystem control unit 14 through an operation unit 12. The various typesof operations include, for example, normal-playback processing,fast-forwarding-play processing, fast-rewinding-play processing, andstop processing. The system-control unit 14 controls each of thefollowing units according to the user operating the operation unit 12.

Encoded video data which is not yet subjected to the transcoding isrecorded onto a recording medium 16. A video-decoding unit 18 reads anddecodes the recorded encoded video data, and outputs video data forreproduction. A display unit 20 produces the video data for reproductiondecoded by the video-decoding unit 18 on a display screen, as video.

The image-recording-and-reproducing apparatus 10 includes avideo-encoding unit 22 to perform transcoding. The video-encoding unit22 encodes video data output from the video-decoding unit 18 accordingto a target bit rate determined by a target-bit-rate-determination unit24 (re-encoding processing). Image data encoded by the video-encodingunit 22 is recorded onto a recording medium 26.

A viewing-operation-history-recording unit 28 records data on thehistory of playback operations performed by the user through theoperation unit 12. For transcoding the video data corresponding to thedata on the history of the playback operations performed by the user,the target-bit-rate-determination unit 24 detects and refers to theviewing-operation-history data recorded in theviewing-operation-history-recording unit 28, and determines a target bitrate for each of frames and/or blocks for encoding. Details on theabove-described processing are described below. The target bit rate maybe expressed as an encoding amount assigned to each of the frames and/orthe blocks.

FIG. 2 is a block diagram showing an exemplary configuration of thevideo-decoding unit 18. The encoded video data read from the recordingmedium 16 is stored in an input buffer 30 in sequence. The encoded videodata is compressed and encoded through the discrete-cosine-transform(DCT) processing, the quantization processing, and thevariable-length-coding processing. A variable-length-decoding unit 32decodes a code obtained by performing the variable-length-codingprocessing for the encoded video data stored in the input buffer 30, andgenerates a quantized transform coefficient. Data on the generatedquantized transform coefficient is transmitted to aninverse-quantization unit 34. The variable-length-decoding unit 32separates data on a motion vector used to provide motion compensation,where the motion vector is multiplexed on the encoded video data storedin the input buffer 30, and transmits the motion-vector data to amotion-compensation unit 42.

The inverse-quantization unit 34 performs inverse quantization for thequantized transform coefficient on which data is transmitted from thevariable-length-decoding unit 32, and transmits data on a transformcoefficient (a representative value) to an inversediscrete-cosine-transform unit 36. The inverse-DCT unit 36 performsinverse DCT processing for the transform coefficient value (therepresentative value) on which data is transmitted from theinverse-quantization unit 34. Subsequently, a picture is reconstitutedfor image data subjected to the intra-frame-coding processing. Further,error data is reconstituted for image data subjected to theinter-frame-coding processing (the predictive-coding processing), wherethe error data indicates the difference between an estimated value andthe value of the image data.

For the image data subjected to the intra-frame-coding processing, anaddition unit 38 outputs data output from the inverse-DCT unit 36, as itis. On the other hand, for the image data subjected to theinter-frame-coding processing, the addition unit 38 adds the estimatedvalue on which data is transmitted from the motion-compensation unit 42to data output from the inverse-DCT unit 36. The data output from theaddition unit 38 becomes decoded image data, and the decoded image datais transmitted to the display unit 20 and/or the video-encoding unit 22.

Image data output from the addition unit 38 is stored in a frame memory40, so as to decode and provide motion compensation for the image datasubjected to the inter-frame-coding processing. The motion-compensationunit 42 reads the image data corresponding to a reference frame for thepredictive-coding processing from the frame memory 40. Further, themotion-compensation unit 42 moves the image data according to the motionvector on which data is transmitted from the variable-length-decodingunit 32. The image data subjected to the motion-compensation processingperformed by the motion-compensation unit 42 is transmitted to theaddition unit 38 as the estimated-value data.

FIG. 3 is a block diagram showing an exemplary configuration of thevideo-encoding unit 22. An input buffer 50 stores video data (VIDEODATA) decoded by the video-decoding unit 18 in frames and the storedvideo data is sequentially read in blocks for encoding. In the casewhere the intra-frame-coding processing is performed, a subtraction unit52 outputs image data output from the input buffer 50, as it is. In thecase where the inter-frame-coding processing (predictive-codingprocessing) is performed, the subtraction unit 52 subtracts theestimated value obtained through the motion compensation provided by amotion-compensation unit 74 from the value of image data output from theinput buffer 50 and outputs data on a result of the subtraction.

A discrete-cosine-transform unit 54 performs the DCT processing for thedata output from the subtraction unit 52, and outputs data on atransform coefficient used for the DCT processing. A quantization unit56 quantizes the transform-coefficient data output from thediscrete-cosine-transform unit 54 according to a quantization scalespecified by a rate-controlling unit 62. The amount of generated codecan be controlled by changing the quantization scale.

A variable-length-coding unit 58 performs variable-length coding for thequantized transform coefficient on which data is transmitted from thequantization unit 56. Further, the variable-length-coding unit 58multiplexes motion-vector data on encoded video data so that the imagedata subjected to the inter-frame-coding processing is decoded, wherethe motion-vector data is transmitted from a motion-detection unit 72.Data output from the variable-length-coding unit 58 is written onto therecording medium 26 via an output buffer 60. Namely, the encoded videodata and the motion-vector data are multiplexed on each other andrecorded onto the recording medium 26 as encoded video (ENCODED VIDEO).

The rate-controlling unit 62 monitors the amount of data stored in theoutput buffer 60, and acquires data on the amount of generated code andthe occupancy ratio of the output buffer 60. Then, the rate-controllingunit 62 controls the quantization scale of the quantization unit 56according to the target-bit-rate information transmitted from thetarget-bit-rate-determination unit 24 and the generated-code-amount dataand the occupancy-ratio data that are acquired from the output buffer60. Subsequently, the generate-code amount is dynamically controlledunder the variable-bit-rate (VBR) system.

The quantized-transform-coefficient data output from the quantizationunit 56 is locally decoded, so as to achieve the inter-frame-codingprocessing. An inverse-quantization unit 64 inversely quantizes thequantized transform coefficient on which data is transmitted from thequantization unit 56, and transmits data on the transform coefficient(representative value) to an inverse-discrete-cosine-transform (inverseDCT) unit 66. The inverse-DCT unit 66 performs inverse-DCT processingfor the transform-coefficient value (representative value) on which datais transmitted from the inverse-quantization unit 64. Subsequently,image data is reconstituted for image data subjected to theintra-frame-coding processing. Further, error data is reconstituted forimage data subjected to the inter-frame-coding processing(predictive-coding processing), where the error data indicates thedifference between an estimated value and the value of the image data.

For decoding the image data subjected to the intra-frame-codingprocessing, an addition unit 68 outputs data output from the inverse-DCTunit 66, as it is. On the other hand, for the image data subjected tothe inter-frame-coding processing (predictive-coding processing), theaddition unit 68 adds the estimated value on which data is transmittedfrom the motion-compensation unit 74 to data output from the inverse-DCTunit 66. Image data output from the addition unit 68 is stored in aframe memory 70, so as to be referred to for achieving theinter-frame-coding processing.

The motion-detection unit 72 calculates a motion vector by comparing areference image on which data is stored in the frame memory 70 and thecurrent image from the input buffer 50, and transmits data on thecalculated motion vector to each of the motion-compensation unit 74 andthe variable-length-coding unit 58. The motion-compensation unit 74reads the image data corresponding to a reference frame provided toachieve the predictive-coding processing from the frame memory 70.Further, the motion-compensation unit 74 moves the read image dataaccording to the motion vector on which data is transmitted from themotion-detection unit 72. The image data provided with the motioncompensation through the motion-compensation unit 74 is transmitted toeach of the subtraction unit 52 and the addition unit 68 as theestimated-value data.

The viewing-operation-history-recording unit 28 is described below indetail with reference to FIG. 4. The viewing-operation-history-recordingunit 28 records data on an operation performed to play each ofvideo-data items back, the video-data items being recorded onto therecording medium 16, as the viewing-operation-history data. Theviewing-operation-history data includes, for example, time information,viewing-operation information, operation-number information, and speedinformation, as shown in FIG. 4. When each of the video-data items isviewed once, as video, the viewing-operation-history data is generatedand recorded for each viewed video-data item. When the video-data itemis viewed a plurality of times, the viewing-operation-history data isupdated for each viewing. For example, when a scene for which afast-forwarding-play operation is performed at the first-viewing time isplayed back at the second-viewing time, data on the playback-operationhistory is added and recorded (and/or updated) in theviewing-operation-history-recording unit 28, so as to be ready for achange in the user's interest.

FIG. 4 shows exemplary data on the history of viewing operationsperformed for video data during the period corresponding to the time offrom t0 to t8. According to the above-described exemplaryviewing-operation-history data, a single playback is performed at anordinary viewing speed (ordinary speed) in each of the periodscorresponding to the time of from t0 to t1, the time of from t2 to t3,the time of from t4 to t5, and the time of from t6 to t7, two playbacksare performed at a five-tenths times ordinary speed (slow speed) in theperiod corresponding to the time of from t1 to t2, and four playbacksare performed at a twenty-five-hundredths times ordinary speed (superslow speed) in the period corresponding to the time of from t7 to t8. Ifpart of the video data is slowly played back at a low multiple (100% orless) of ordinary speed, it means that the part is deliberately viewedby a viewer. Therefore, it can be considered that the part is of a highdegree of interest to the viewer. Further, as the number of viewingoperations grew, the degree of the user's interest increases.

Further, a single fast-forwarding play is performed at two timesordinary speed in the period corresponding to the time of from t3 to t4.Two fast-forwarding plays are performed at four times ordinary speed inthe period corresponding to the time of from t5 to t6. If part of thevideo data is fast-forwarded at a high multiple (over 100%) of ordinaryspeed, it indicates that the part provokes little attention of theviewer. Therefore, it can be considered that the part is of a low degreeof interest to the viewer. Further, as the number or speed offast-forwarding plays grew, the degree of the user's interest decreases.The ordinary speed typically is a viewing speed which the video wasintended to be viewed when produced or mastered; however, ordinary speedmay vary from such speed, for example, where video has been convertedbetween video formats having different frame rates.

Operations of the target-bit-rate-determination unit 24 are described indetail with reference to FIGS. 5, 6, 7, 8, 9, and 10. Thetarget-bit-rate-determination unit 24 determines a bit rate which is thetarget of transcoding. The video-encoding unit 22 re-encodes the videodata decoded by the video-decoding unit 18 based on the target bit ratedetermined by the target-bit-rate-determination unit 24.

FIG. 5 shows exemplary viewing-operation-history data and FIG. 6 showsan exemplary time variation in the bit rate determined by thetarget-bit-rate-determination unit 24, where the time-varying bit ratecorresponds to the exemplary viewing-operation-history data shown inFIG. 5. In FIG. 6, the horizontal axis indicates the time and thevertical axis indicates the bit rate.

According to the exemplary viewing-operation-history data shown in FIG.5, the video data is played back in each of the periods corresponding tothe time of from t0 to t1, the time of from t2 to t3, and the time offrom t4 to t5, and fast-forwarded in each of the periods correspondingto the time of from t1 to t2 and the time of from t3 to t4. According toFIG. 6, the target-bit-rate-determination unit 24 determines a referencebit rate used during an ordinary-playback-operation period to be therate of 6 Mbps. For example, the reference bit rate may be determined inadvance with input from a user. Further, thetarget-bit-rate-determination unit 24 determines a bit rate used duringthe fast-forwarding-play-operation period to be the rate of, forexample, 4 Mbps, which is lower than the reference bit rate.

FIG. 7 shows a second exemplary viewing-operation-history data and FIG.8 shows an exemplary time variation in the bit rate determined by thetarget-bit-rate-determination unit 24, where the time-varying bit ratecorresponds to the exemplary viewing-operation-history data shown inFIG. 7. In FIG. 8, the horizontal axis indicates the time and thevertical axis indicates the bit rate.

In FIG. 7, the viewing operation is performed a plurality of times. Anordinary playback operation (playback at ordinary speed) is performed asingle time in each of the periods corresponding to the time of from t0to t1, the time of from t2 to t3, the time of from t4 to t5, and thetime of from t6 to t7. The ordinary playback operation is performed twotimes in the period corresponding to the time of from t1 to t2. Theordinary playback operation is performed four times in the periodcorresponding to the time of from t7 to t8. The fast-forwarding-playoperation at two times ordinary speed is performed a single time in theperiod corresponding to the time of from t3 to t4. Thefast-forwarding-play operation at two times ordinary speed is performedtwo times in the period corresponding to the time of from t5 to t6.

Referring to FIG. 8, for the second exemplary viewing-operation-historydata shown in FIG. 7, the target-bit-rate-determination unit 24 sets thereference bit rate (of 6 Mbps, for example) as the bit rate used toperform transcoding for the period where the ordinary playback operationis performed a single time. For the period where thefast-forwarding-play operation is performed a single time, the periodindicating a low degree of interest of the viewer, thetarget-bit-rate-determination unit 24 sets the rate of 4 Mbps, forexample, which is lower than the reference bit rate. Further, for theperiod where the number of the fast-forwarding-play operations is two,the period indicating a lower degree of interest of the viewer, thetarget-bit-rate-determination unit 24 sets the rate of 3 Mbps, forexample, which is lower than the bit rate of the period where thefast-forwarding-play operation is performed a single time. For theperiod where the number of the ordinary-playback operations is two, theperiod indicating a high degree of interest of the viewer, thetarget-bit-rate-determination unit 24 sets the rate of 7 Mbps, forexample, which is higher than the reference bit rate. Further, for theperiod where the number of the ordinary-playback operations is four, theperiod indicating the high degree of interest of the viewer, thetarget-bit-rate-determination unit 24 sets, for example, the rate of 8Mbps, which is still higher than the bit rate used in the period wherethe ordinary-playback operation is performed two times.

FIG. 9 shows a third exemplary viewing-operation-history data and FIG.10 shows an exemplary time variation in the bit rate determined by thetarget-bit-rate-determination unit 24, where the time-varying bit ratecorresponds to the third exemplary viewing-operation-history data shownin FIG. 9. In FIG. 10, the horizontal axis indicates the time and thevertical axis indicates the bit rate.

According to the third exemplary viewing-operation-history data shown inFIG. 9, playback operations are performed at a variety of speeds.Namely, an ordinary playback operation (ordinary speed) is performed ineach of the periods corresponding to the time of from t0 to t1, the timeof from t2 to t3, the time of from t4 to t5, and the time of from t6 tot7. A playback operation is performed at five-tenths times ordinaryspeed (slow speed) over the period corresponding to the time of from t1to t2. Another playback operation is performed at a twenty-fivehundredths times ordinary speed (super slow speed) over the periodcorresponding to the time of from t7 to t8. Further, afast-forwarding-play operation is performed at a two times ordinaryspeed over the period corresponding to the time of from t3 to t4, and afast-forwarding-play operation is performed at a four times ordinaryspeed over the period corresponding to the time of from t5 to t6.

Referring to FIG. 10, for the third exemplary viewing-operation-historydata shown in FIG. 9, the target-bit-rate-determination unit 24 sets thereference bit rate (of 6 Mbps, for example) as a bit rate to be used toperform transcoding for the period where the playback operation isperformed at ordinary speed, that is, the ordinary-playback-operationperiod. For the period where the fast-forwarding-play operation isperformed at the two times ordinary speed, where the period indicates alow degree of interest of the viewer, the target-bit-rate-determinationunit 24 sets, for example, the bit rate of 4 Mbps, which is lower thanthe reference bit rate. Further, for the period where thefast-forwarding-play operation is performed at the four times ordinaryspeed, where the period indicates the still lower degree of interest ofthe viewer, the target-bit-rate-determination unit 24 sets, for example,the bit rate of 3 Mbps, which is lower than the bit rate of the periodwhere the fast-forwarding-play operation is performed at the two timesordinary speed. For the period where the playback operation is performedat five-tenths times ordinary speed (slow speed), where the periodindicates a high degree of interest of the viewer, thetarget-bit-rate-determination unit 24 sets, for example, the bit rate of7 Mbps, which is higher than the reference bit rate. Further, for theperiod where the playback operation is performed at twenty-fivehundredths times ordinary speed (super slow speed), where the periodindicates a still higher degree of interest of the viewer, thetarget-bit-rate-determination unit 24 sets, for example, the rate of 8Mbps, which is higher than the bit rate used in the period where theplayback operation is performed at the five-tenths times ordinary speed(slow speed). That is to say, the bit rate is increased with decreasesin the playback speed.

Thus, the bit rate used to perform the transcoding is determined basedon the viewing-operation-history data so that the video datacorresponding to a scene which is of a low degree of interest of theviewer can be compressed and encoded with low image quality and thevideo data corresponding to a scene which is of a high degree ofinterest of the viewer can be compressed and encoded with high imagequality, which allows for aggressively decreasing the data amount.According to the first embodiment, the playback operations correspondingto the playbacks and/or the fast-forwarding plays are described as theviewing-operation-history data.

Second Embodiment

In accordance with a second embodiment of the present invention, theviewing-operation-history data may include information about referringto a playlist. The playlist is achieved by collecting (referring to)scenes which the viewer wants to view and arranging the scenes indesired playback order. The second embodiment may be configured in thesame manner shown in FIGS. 1-3 with respect to the first embodiment, forexample, or alternatively in similar manner. The second embodiment isfurther described below with reference to FIGS. 11-13.

FIG. 11 shows a fourth exemplary viewing-operation-history datacorresponding to any of playlists of predetermined video data. Accordingto the fourth exemplary viewing-operation-history data, the playlist ofthe above-described video data is not referred to in each of the periodscorresponding to the time of from t0 to t1, the time of from t2 to t3,and the time of from t4 to t5. The video data is referred to on theplaylist and played back once in the period corresponding to the time offrom t1 to t2 and twice in the period corresponding to the time of fromt3 to t4.

FIG. 12 shows an exemplary time variation in the bit rate determined bythe target-bit-rate-determination unit 24, where the time-varying bitrate corresponds to the exemplary viewing-operation-history data shownin FIG. 11. In FIG. 12, the horizontal axis indicates the time and thevertical axis indicates the bit rate.

According to the exemplary time variation shown in FIG. 12, thetarget-bit-rate-determination unit 24 sets the reference bit rate (of 6Mbps, for example) as a bit rate used to perform transcoding for theperiod where the video data is not referred to on the playlist. For theperiod where the video data is referred to a single time on theplaylist, where the period indicates a high degree of interest of theviewer, the target-bit-rate-determination unit 24 sets, for example, thebit rate of 7 Mbps, which is higher than the reference bit rate.Further, for the period where the video data is referred to two times onthe playlist, where the period indicates an even higher degree ofinterest of the viewer, the target-bit-rate-determination unit 24 sets,for example, the bit rate of 8 Mbps, which is even higher than the bitrate of the period where the video data is referred to a single time onthe playlist. That is to say, the bit rate becomes higher than thereference bit rate with increases in the number of times the playlist isreferred to.

FIG. 13 shows an exemplary flowchart of exemplary bit-rate-determinationoperations performed by the target-bit-rate-determination unit 24 in thefirst and second embodiments. Transcoding is started at step S1. At stepS2, it is checked whether or not the viewing-operation-history datacorresponding to video data for the transcoding is recorded in theviewing-operation-history-recording unit 28. If theviewing-operation-history data is recorded in theviewing-operation-history-recording unit 28, (YES at step S2), thetarget-bit-rate-determination unit 24 reads theviewing-operation-history data from theviewing-operation-history-recording unit 28 at step S3, and determines abit rate according to any of the above-described embodiments at step S4.If it is determined that no viewing-operation-history data is recordedin the viewing-operation-history-recording unit 28, (NO at step S2, thetarget-bit-rate-determination unit 24 uses the reference bit rate (asdescribed above) for the video data for the transcoding at step S4.

According to the first and second embodiments, it becomes possible totranscode the video data corresponding to a scene which is of a highdegree of the user's interest with high image quality and the video datacorresponding to a scene which is of a low degree of the user's interestwith low image quality by changing the target bit rate used at thetranscoding time based on the viewing-operation-history data.Consequently, it becomes possible to reduce the data amount and adjustthe image quality according to the degree of the user's interest.

According to the first and second embodiments, video data is encodedunder the MPEG-2 encoding system. However, other video-data-encodingsystem including, for example, the H.264-encoding system may be used.Further, it is obvious that the compression system used for the videodata recorded onto the recording medium 16 may be different from thatused for the video data recorded onto the recording medium 26.

The recording mediums 16 and 26 may be configured as separate recordingmediums, as is the case with a hard disk and an optical disk. On theother hand, the recording mediums 16 and 26 may be configured asseparate recording areas provided on the same recording medium.

Other Embodiments

Each of the units generating the image-recording-and-reproducingapparatus and each of the steps of the method performed to record andreproduce image data according to the first and second exemplaryembodiments of the present invention can be achieved by an operatingprogram stored in a random-access memory (RAM), a read-only memory(ROM), etc. of a computer. Each of the above-described program and acomputer-readable recording medium recording the program may constitutethe present invention.

Any system, apparatus, method, or program stored in a machine readablemedium consistent with the present invention serves as an embodiment ofthe present invention. The present invention can be fabricated as asingle device or multiple devices.

Further, the present invention can also be achieved by directlysupplying program code of software for implementing the functions of theabove-described embodiments to a system and/or an apparatus that canexecute or store the program code. The present invention can also beachieved by supplying the above-described program code from remotelocations, and reading and executing the supplied program code by acomputer of the system and/or the apparatus. A general purpose computer,such as a P.C., Macintosh, or UNIX workstation may be used.Alternatively any circuitry that can execute instructions qualifies as acomputer as used herein. For example, a programmable microprocessorincluded in a video playback qualifies.

Such program code itself, installed on a computer so as to achieve thefunctions of the present invention through the computer, serves as anembodiment of the present invention. Namely, a computer program itself,provided to achieve the functions of the present invention, mayconstitute the present invention.

Such computer program may be object code, a program executed by aninterpreter, script data supplied to an operating system (OS), or thelike. Alternatively, the computer program may be implemented asfirmware.

A recording medium used to supply the program may be, for example, amagnetic tape, a floppy disk, a hard disk, an optical disk, amagneto-optical disk, a magneto-optical (MO) disk, a compact disk(CD)-ROM, a CD-recordable (R), or a CD-rewritable (RW). Further, therecording medium may be a digital versatile disk (DVD) such as aDVD-ROM, DVD-R, DVD+R, DVD-RW, DVD+RW, or dual layer DVD storage device.The storage device may alternatively be a Blu-Ray Disc™, or the like.Alternatively, a nonvolatile memory card, a flash memory, a ROM, ormicroprocessor based storage medium may be used as a storage medium.

Further methods of supplying the program to the system and/or theapparatus are described below. For example, the program can be suppliedby accessing to a homepage provided on the Internet through the browserof a client computer and downloading a computer program itself of anexemplary embodiment of the present invention from the homepage. Theprogram can also be supplied by downloading compressed file dataincluding the automatic-install function to the recording medium such asthe hard disk.

Further, the program can also be supplied to the system and/or theapparatus by dividing program code generating the above-describedprogram into at least two file-data items and downloading each of thefile-data items from different homepages. Namely, a World Wide Web (WWW)server encouraging a plurality of users to download program file dataused to achieve the functions of the present invention through acomputer may constitute the present invention.

Further, a program according to an exemplary embodiment of the presentinvention may be encrypted, recorded onto the recording medium such asthe CD-ROM, and distributed to a user. Then, a user satisfyingpredetermined conditions may be encouraged to download key informationused to decrypt the encrypted program from a homepage via the Internet.The encrypted program can be executed by using the above-described keyinformation so that the program is installed on a computer and achieved.

Further, the functions of the above-described exemplary embodiments maybe achieved by the computer executing the read program. The functions ofthe above-described exemplary embodiments may also be achieved by thecomputer executing part of and/or the entire actual processing throughan OS or the like running on the computer based on instructions of theprogram.

Still further, the program read from the recording medium may be writteninto a memory of a function-expansion board inserted into the computerand/or a function-expansion unit connected to the computer. Then, acentral-processing unit (CPU) or the like of the function-expansionboard and/or the function-expansion unit may execute part of and/or theentire actual processing based on instructions of the program so thatthe functions of the above-described exemplary embodiments are achieved.

While the present invention is described with reference to exemplaryembodiments, it is to be understood that the invention is not limited tothe disclosed exemplary embodiments. The scope of the following claimsis to be accorded the broadest interpretation so as to encompass allmodifications and equivalent structures and functions.

What is claimed is:
 1. An encoding apparatus comprising: a decoder thatdecodes encoded moving image data to generate decoded moving image data;a determination unit that determines a bit rate of second encoded movingimage data based on information relating to the second encoded movingimage data, wherein the information indicates how many times the firstencoded moving image data has been reproduced at a predetermined speed;and an encoder that encodes the decoded moving image data based on thedetermined bit rate to generate the second encoded moving image data,wherein the determination unit determines a first bit rate as the bitrate of the second encoded moving image data if the informationcorresponds to a first value and the predetermined speed is a normalspeed, and wherein the determination unit determines a second bit ratehigher than the first bit rate as the bit rate of the second encodedmoving image data if the information corresponds to a second valuelarger than the first value and the predetermined speed is the normalspeed.
 2. A method comprising: decoding encoded moving image data togenerate decoded moving image data; determining a bit rate of secondencoded moving image data based on information relating to the secondencoded moving image data, wherein the information indicates how manytimes the first encoded moving image data has been reproduced at apredetermined speed; and encoding the decoded moving image data based onthe determined bit rate to generate the second encoded moving imagedata, wherein a first bit rate is determined as the bit rate of thesecond encoded moving image data if the information corresponds to afirst value and the predetermined speed is a normal speed, and wherein asecond bit rate higher than the first bit rate is determined as the bitrate of the second encoded moving image data if the informationcorresponds to a second value larger than the first value and thepredetermined speed is the normal speed.
 3. An encoding apparatuscomprising: a decoder that decodes encoded moving image data to generatedecoded moving image data; a determination unit that determines a bitrate of second encoded moving image data based on information relatingto the second encoded moving image data, wherein the informationindicates how many times the first encoded moving image data has beenreproduced at a predetermined speed; and an encoder that encodes thedecoded moving image data based on the determined bit rate to generatethe second encoded moving image data, wherein the determination unitdetermines a first bit rate as the bit rate of the second encoded movingimage data if the information corresponds to a first value and thepredetermined speed is a speed higher than a normal speed, and whereinthe determination unit determines a second bit rate lower than the firstbit rate as the bit rate of the second encoded moving image data if theinformation corresponds to a second value larger than the first valueand the predetermined speed is the speed higher than the normal speed.4. The encoding apparatus according to claim 1, wherein the encoder isconfigured to use an intra frame coding to encode the decoded movingimage data.
 5. The encoding apparatus according to claim 1, wherein theencoder is configured to use one of an inter frame coding and apredictive coding to encode the decoded moving image data.
 6. Anon-transitory computer-readable storage medium that stores a programfor causing a computer to execute a method, the method comprising:decoding encoded moving image data to generate decoded moving imagedata; determining a bit rate of second encoded moving image data basedon information relating to the second encoded moving image data, whereinthe information indicates how many times the first encoded moving imagedata has been reproduced at a predetermined speed; and encoding thedecoded moving image data based on the determined bit rate to generatethe second encoded moving image data, wherein a first bit rate isdetermined as the bit rate of the second encoded moving image data ifthe information corresponds to a first value and the predetermined speedis a normal speed, and wherein a second bit rate higher than the firstbit rate is determined as the bit rate of the second encoded movingimage data if the information corresponds to a second value larger thanthe first value and the predetermined speed is the normal speed.
 7. Anencoding apparatus comprising: a decoder that decodes encoded movingimage data to generate decoded moving image data; a determination unitthat determines a bit rate of second encoded moving image data based oninformation relating to the second encoded moving image data, whereinthe information indicates how many times the first encoded moving imagedata has been reproduced by a predetermined reproduction process; and anencoder that encodes the decoded moving image data based on thedetermined bit rate to generate the second encoded moving image data,wherein the determination unit determines a first bit rate as the bitrate of the second encoded moving image data if the informationcorresponds to a first value and the predetermined reproduction processis a normal reproduction process, and wherein the determination unitdetermines a second bit rate higher than the first bit rate as the bitrate of the second encoded moving image data if the informationcorresponds to a second value larger than the first value and thepredetermined reproduction process is the normal reproduction process.8. An encoding apparatus comprising: a decoder that decodes encodedmoving image data to generate decoded moving image data; a determinationunit that determines a bit rate of second encoded moving image databased on information relating to the second encoded moving image data,wherein the information indicates how many times the first encodedmoving image data has been reproduced by a predetermined reproductionprocess; and an encoder that encodes the decoded moving image data basedon the determined bit rate to generate the second encoded moving imagedata, wherein the determination unit determines a first bit rate as thebit rate of the second encoded moving image data if the informationcorresponds to a first value and the predetermined reproduction processis a high speed reproduction process, and wherein the determination unitdetermines a second bit rate lower than the first bit rate as the bitrate of the second encoded moving image data if the informationcorresponds to a second value larger than the first value and thepredetermined reproduction process is the high speed reproductionprocess.
 9. The encoding apparatus according to claim 7, wherein theencoder is configured to use an intra frame coding to encode the decodedmoving image data.
 10. The encoding apparatus according to claim 7,wherein the encoder is configured to use one of an inter frame codingand a predictive coding to encode the decoded moving image data.
 11. Amethod comprising: decoding encoded moving image data to generatedecoded moving image data; determining a bit rate of second encodedmoving image data based on information relating to the second encodedmoving image data, wherein the information indicates how many times thefirst encoded moving image data has been reproduced by a predeterminedreproduction process; and encoding the decoded moving image data basedon the determined bit rate to generate the second encoded moving imagedata, wherein a first bit rate is determined as the bit rate of thesecond encoded moving image data if the information corresponds to afirst value and the predetermined reproduction process is a normalreproduction process, and wherein a second bit rate higher than thefirst bit rate is determined as the bit rate of the second encodedmoving image data if the information corresponds to a second valuelarger than the first value and the predetermined reproduction processis the normal reproduction process.
 12. A non-transitorycomputer-readable storage medium that stores a program for causing acomputer to execute a method, the method comprising: decoding encodedmoving image data to generate decoded moving image data; determining abit rate of second encoded moving image data based on informationrelating to the second encoded moving image data, wherein theinformation indicates how many times the first encoded moving image datahas been reproduced by a predetermined reproduction process; andencoding the decoded moving image data based on the determined bit rateto generate the second encoded moving image data, wherein a first bitrate is determined as the bit rate of the second encoded moving imagedata if the information corresponds to a first value and thepredetermined reproduction process is a normal reproduction process, andwherein a second bit rate higher than the first bit rate is determinedas the bit rate of the second encoded moving image data if theinformation corresponds to a second value larger than the first valueand the predetermined reproduction process is the normal reproductionprocess.
 13. An encoding apparatus comprising: a decoder that decodesencoded moving image data to generate decoded moving image data; adetermination unit that determines a bit rate of second encoded movingimage data based on information relating to the second encoded movingimage data, wherein the information indicates at which speed the firstencoded moving image data has been reproduced; and an encoder thatencodes the decoded moving image data based on the determined bit rateto generate the second encoded moving image data, wherein thedetermination unit determines a first bit rate as the bit rate of thesecond encoded moving image data if the information corresponds to afirst speed, and wherein the determination unit determines a second bitrate lower than the first bit rate as the bit rate of the second encodedmoving image data if the information corresponds to a second speedhigher than the first speed.
 14. An encoding apparatus comprising: adecoder that decodes encoded moving image data to generate decodedmoving image data; a determination unit that determines a bit rate ofsecond encoded moving image data based on information relating to thesecond encoded moving image data, wherein the information indicates atwhich speed the first encoded moving image data has been reproduced; andan encoder that encodes the decoded moving image data based on thedetermined bit rate to generate the second encoded moving image data,wherein the determination unit determines a first bit rate as the bitrate of the second encoded moving image data if the informationcorresponds to a first speed, and wherein the determination unitdetermines a second bit rate higher than the first bit rate as the bitrate of the second encoded moving image data if the informationcorresponds to a second speed slower than the first speed.
 15. Theencoding apparatus according to claim 13, wherein the encoder isconfigured to use an intra frame coding to encode the decoded movingimage data.
 16. The encoding apparatus according to claim 13, whereinthe encoder is configured to use one of an inter frame coding and apredictive coding to encode the decoded moving image data.
 17. A methodcomprising: decoding encoded moving image data to generate decodedmoving image data; determining a bit rate of second encoded moving imagedata based on information relating to the second encoded moving imagedata, wherein the information indicates at which speed the first encodedmoving image data has been reproduced; and encoding the decoded movingimage data based on the determined bit rate to generate the secondencoded moving image data, wherein a first bit rate is determined as thebit rate of the second encoded moving image data if the informationcorresponds to a first speed, and wherein a second bit rate lower thanthe first bit rate is determined as the bit rate of the second encodedmoving image data if the information corresponds to a second speedhigher than the first speed.
 18. A non-transitory computer-readablestorage medium that stores a program for causing a computer to execute amethod, the method comprising: decoding encoded moving image data togenerate decoded moving image data; determining a bit rate of secondencoded moving image data based on information relating to the secondencoded moving image data, wherein the information indicates at whichspeed the first encoded moving image data has been reproduced; andencoding the decoded moving image data based on the determined bit rateto generate the second encoded moving image data, wherein a first bitrate is determined as the bit rate of the second encoded moving imagedata if the information corresponds to a first speed, and wherein asecond bit rate lower than the first bit rate is determined as the bitrate of the second encoded moving image data if the informationcorresponds to a second speed higher than the first speed.
 19. Theencoding apparatus according to claim 3, wherein the encoder isconfigured to use an intra frame coding to encode the decoded movingimage data.
 20. The encoding apparatus according to claim 3, wherein theencoder is configured to use one of an inter frame coding and apredictive coding to encode the decoded moving image data.
 21. A methodcomprising: decoding encoded moving image data to generate decodedmoving image data; determining a bit rate of second encoded moving imagedata based on information relating to the second encoded moving imagedata, wherein the information indicates how many times the first encodedmoving image data has been reproduced at a predetermined speed; andencoding the decoded moving image data based on the determined bit rateto generate the second encoded moving image data, wherein a first bitrate is determined as the bit rate of the second encoded moving imagedata if the information corresponds to a first value and thepredetermined speed is a speed higher than a normal speed, and wherein asecond bit rate lower than the first bit rate is determined as the bitrate of the second encoded moving image data if the informationcorresponds to a second value larger than the first value and thepredetermined speed is the speed higher than the normal speed.
 22. Anon-transitory computer-readable storage medium that stores a programfor causing a computer to execute a method, the method comprising:decoding encoded moving image data to generate decoded moving imagedata; determining a bit rate of second encoded moving image data basedon information relating to the second encoded moving image data, whereinthe information indicates how many times the first encoded moving imagedata has been reproduced at a predetermined speed; and encoding thedecoded moving image data based on the determined bit rate to generatethe second encoded moving image data, wherein a first bit rate isdetermined as the bit rate of the second encoded moving image data ifthe information corresponds to a first value and the predetermined speedis a speed higher than a normal speed, and wherein a second bit ratelower than the first bit rate is determined as the bit rate of thesecond encoded moving image data if the information corresponds to asecond value larger than the first value and the predetermined speed isthe speed higher than the normal speed.
 23. The encoding apparatusaccording to claim 8, wherein the encoder is configured to use an intraframe coding to encode the decoded moving image data.
 24. The encodingapparatus according to claim 8, wherein the encoder is configured to useone of an inter frame coding and a predictive coding to encode thedecoded moving image data.
 25. A method comprising: decoding encodedmoving image data to generate decoded moving image data; determining abit rate of second encoded moving image data based on informationrelating to the second encoded moving image data, wherein theinformation indicates how many times the first encoded moving image datahas been reproduced by a predetermined reproduction process; andencoding the decoded moving image data based on the determined bit rateto generate the second encoded moving image data, wherein a first bitrate is determined as the bit rate of the second encoded moving imagedata if the information corresponds to a first value and thepredetermined reproduction process is a high speed reproduction process,and wherein a second bit rate lower than the first bit rate isdetermined as the bit rate of the second encoded moving image data ifthe information corresponds to a second value larger than the firstvalue and the predetermined reproduction process is the high speedreproduction process.
 26. A non-transitory computer-readable storagemedium that stores a program for causing a computer to execute a method,the method comprising: decoding encoded moving image data to generatedecoded moving image data; determining a bit rate of second encodedmoving image data based on information relating to the second encodedmoving image data, wherein the information indicates how many times thefirst encoded moving image data has been reproduced by a predeterminedreproduction process; and encoding the decoded moving image data basedon the determined bit rate to generate the second encoded moving imagedata, wherein a first bit rate is determined as the bit rate of thesecond encoded moving image data if the information corresponds to afirst value and the predetermined reproduction process is a high speedreproduction process, and wherein a second bit rate lower than the firstbit rate is determined as the bit rate of the second encoded movingimage data if the information corresponds to a second value larger thanthe first value and the predetermined reproduction process is the highspeed reproduction process.
 27. The encoding apparatus according toclaim 14, wherein the encoder is configured to use an intra frame codingto encode the decoded moving image data.
 28. The encoding apparatusaccording to claim 14, wherein the encoder is configured to use one ofan inter frame coding and a predictive coding to encode the decodedmoving image data.
 29. A method comprising: decoding encoded movingimage data to generate decoded moving image data; determining a bit rateof second encoded moving image data based on information relating to thesecond encoded moving image data, wherein the information indicates atwhich speed the first encoded moving image data has been reproduced; andencoding the decoded moving image data based on the determined bit rateto generate the second encoded moving image data, wherein a first bitrate is determined as the bit rate of the second encoded moving imagedata if the information corresponds to a first speed, and wherein asecond bit rate higher than the first bit rate is determined as the bitrate of the second encoded moving image data if the informationcorresponds to a second speed slower than the first speed.
 30. Anon-transitory computer-readable storage medium that stores a programfor causing a computer to execute a method, the method comprising:decoding encoded moving image data to generate decoded moving imagedata; determining a bit rate of second encoded moving image data basedon information relating to the second encoded moving image data, whereinthe information indicates at which speed the first encoded moving imagedata has been reproduced; and encoding the decoded moving image databased on the determined bit rate to generate the second encoded movingimage data, wherein a first bit rate is determined as the bit rate ofthe second encoded moving image data if the information corresponds to afirst speed, and wherein a second bit rate higher than the first bitrate is determined as the bit rate of the second encoded moving imagedata if the information corresponds to a second speed slower than thefirst speed.